package com.ywgt.system;

import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

abstract class BaseConfig {

    protected static Map<String,String> configs=new HashMap<>();

    public static void addConfig(String key,String value){
        configs.put(key,value);
    }

    public static void reload(String prefix){
        for (Iterator<Map.Entry<String, String>> iterator = configs.entrySet().iterator();iterator.hasNext();){
            Map.Entry<String, String> next = iterator.next();
            if(next.getKey().startsWith(prefix)){
                iterator.remove();
            }
        }
        ConfigService.getConfigService().reload(prefix);
    }

    public static String getConfig(String key){
        return configs.get(key);
    }

    public static Integer getConfigInt(String key){
        return Integer.parseInt(configs.get(key));
    }

    public static BigDecimal getConfigBigDec(String key){
        return new BigDecimal(configs.get(key));
    }
    abstract String getPrefix();
}
